﻿//using System;
//using System.Data;
//using System.Linq.Expressions;

//namespace DBUtil.Builders
//{
//    /// <summary>
//    /// 过滤条件构建器
//    /// </summary>
//    /// <typeparam name="T"></typeparam>
//    public interface IWhereBuilder<T> where T : class, new()
//    {
//        IWhereBuilder<T> And(Expression<Predicate<T>> expression);
//        IWhereBuilder<T> AndRaw(string filterSql, params IDataParameter[] paras);

//        IWhereBuilder<T> Or(Expression<Predicate<T>> expression);

//        IWhereBuilder<T> OrRaw(string filterSql, params IDataParameter[] paras);

//        IWhereBuilder<T> WhereKey();

//        IUpdateBuilder<T> BackUpdate();

//        IDeleteBuilder<T> BackDelete();

//        ISelectBuilder<T> BackSelect();

//        IWhereBuilder<T> ClearFilters();

//        (string filterSql, IDataParameter[] paras) Build();

//        IWhereBuilder<T> Init(IUpdateBuilder<T> builder);
//        IWhereBuilder<T> Init(IDeleteBuilder<T> builder);
//        IWhereBuilder<T> Init(ISelectBuilder<T> builder);
//    }
//}
